// 获取用户的基本信息

// 导入express模块
const express = require("express");

// 1.初始化 路由 模块  创建路由对象
const router = express.Router();
// 1.2初始化 路由处理函数 模块

// 1.4导入获取用户信息的逻辑处理 模块
const userinfo_handler = require("../router_handler/userinfo");

// 4.2导入验证数据合法性的中间件 验证表单数据;
const expressJoi = require("@escook/express-joi");
// 4.3导入需要的验证规则对象：
const {
  update_userinfo_schema,
  update_password_schema,
  update_avatar_schema,
} = require("../schema/user");

// 1.3获取用户的基本信息
router.get("/userinfo", userinfo_handler.getUserInfo);

// 2.在 index.js 中导入并使用个人中心的路由模块：

// 3.创建 /router_handler/userinfo.js 路由处理函数模块  初始化路由处理函数模块

// ----------------------------------------------

// 4.更新用户信息
// 4.1定义路由和处理函数;

// 4.4修改 更新用户的基本信息 的路由如下：
router.post(
  "/userinfo",
  expressJoi(update_userinfo_schema),
  userinfo_handler.updateUserInfo
);

// ----------------------------------------------

// 5.重置密码
// 5.1定义路由和处理函数;
router.post(
  "/updatepwd",
  expressJoi(update_password_schema), // 5.2验证表单数据
  userinfo_handler.updatePassword
);

// 6.更新用户头像
router.post(
  "/update/avatar",
  expressJoi(update_avatar_schema),
  userinfo_handler.updateAvatar
);
// 验证表单数据 在 /schema/user.js 验证规则模块中，定义 avatar 的验证规则
// 暴漏
module.exports = router;
